Polynomial Hierarchy
   HOME

TheInfoList



OR:

In
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved by ...
, the polynomial hierarchy (sometimes called the polynomial-time hierarchy) is a
hierarchy A hierarchy (from Greek: , from , 'president of sacred rites') is an arrangement of items (objects, names, values, categories, etc.) that are represented as being "above", "below", or "at the same level as" one another. Hierarchy is an important ...
of
complexity class In computational complexity theory, a complexity class is a set of computational problems of related resource-based complexity. The two most commonly analyzed resources are time and memory. In general, a complexity class is defined in terms of ...
es that generalize the classes NP and
co-NP In computational complexity theory, co-NP is a complexity class. A decision problem X is a member of co-NP if and only if its complement is in the complexity class NP. The class can be defined as follows: a decision problem is in co-NP precisely ...
. Each class in the hierarchy is contained within
PSPACE In computational complexity theory, PSPACE is the set of all decision problems that can be solved by a Turing machine using a polynomial amount of space. Formal definition If we denote by SPACE(''t''(''n'')), the set of all problems that can b ...
. The hierarchy can be defined using
oracle machine In complexity theory and computability theory, an oracle machine is an abstract machine used to study decision problems. It can be visualized as a Turing machine with a black box, called an oracle, which is able to solve certain problems in a ...
s or
alternating Turing machine In computational complexity theory, an alternating Turing machine (ATM) is a non-deterministic Turing machine (NTM) with a rule for accepting computations that generalizes the rules used in the definition of the complexity classes NP and co-NP. ...
s. It is a resource-bounded counterpart to the
arithmetical hierarchy In mathematical logic, the arithmetical hierarchy, arithmetic hierarchy or Kleene–Mostowski hierarchy (after mathematicians Stephen Cole Kleene and Andrzej Mostowski) classifies certain sets based on the complexity of formulas that define th ...
and
analytical hierarchy In mathematical logic and descriptive set theory, the analytical hierarchy is an extension of the arithmetical hierarchy. The analytical hierarchy of formulas includes formulas in the language of second-order arithmetic, which can have quantifiers ...
from
mathematical logic Mathematical logic is the study of logic, formal logic within mathematics. Major subareas include model theory, proof theory, set theory, and recursion theory. Research in mathematical logic commonly addresses the mathematical properties of for ...
. The union of the classes in the hierarchy is denoted PH. Classes within the hierarchy have complete problems (with respect to
polynomial-time reduction In computational complexity theory, a polynomial-time reduction is a method for solving one problem using another. One shows that if a hypothetical subroutine solving the second problem exists, then the first problem can be solved by transforming ...
s) which ask if
quantified Boolean formula In computational complexity theory, the language TQBF is a formal language consisting of the true quantified Boolean formulas. A (fully) quantified Boolean formula is a formula in quantified propositional logic where every variable is quantified ( ...
e hold, for formulae with restrictions on the quantifier order. It is known that equality between classes on the same level or consecutive levels in the hierarchy would imply a "collapse" of the hierarchy to that level.


Definitions

There are multiple equivalent definitions of the classes of the polynomial hierarchy.


Oracle definition

For the oracle definition of the polynomial hierarchy, define :\Delta_0^\mathsf := \Sigma_0^\mathsf := \Pi_0^\mathsf := \mathsf, where P is the set of
decision problem In computability theory and computational complexity theory, a decision problem is a computational problem that can be posed as a yes–no question of the input values. An example of a decision problem is deciding by means of an algorithm wheth ...
s solvable in
polynomial time In computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations performed by ...
. Then for i ≥ 0 define :\Delta_^\mathsf := \mathsf^ :\Sigma_^\mathsf := \mathsf^ :\Pi_^\mathsf := \mathsf^ where \mathsf^ is the set of
decision problem In computability theory and computational complexity theory, a decision problem is a computational problem that can be posed as a yes–no question of the input values. An example of a decision problem is deciding by means of an algorithm wheth ...
s solvable in polynomial time by a
Turing machine A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer algori ...
augmented by an
oracle An oracle is a person or agency considered to provide wise and insightful counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. As such, it is a form of divination. Description The word '' ...
for some complete problem in class A; the classes \mathsf^ and \mathsf^ are defined analogously. For example, \Sigma_1^\mathsf = \mathsf, \Pi_1^\mathsf = \mathsf , and \Delta_2^\mathsf = \mathsf is the class of problems solvable in polynomial time by a deterministic Turing machine with an oracle for some NP-complete problem.


Quantified boolean formulae definition

For the existential/universal definition of the polynomial hierarchy, let be a
language Language is a structured system of communication. The structure of a language is its grammar and the free components are its vocabulary. Languages are the primary means by which humans communicate, and may be conveyed through a variety of met ...
(i.e. a
decision problem In computability theory and computational complexity theory, a decision problem is a computational problem that can be posed as a yes–no question of the input values. An example of a decision problem is deciding by means of an algorithm wheth ...
, a subset of *), let be a
polynomial In mathematics, a polynomial is an expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication, and positive-integer powers of variables. An exa ...
, and define : \exists^p L := \left\, where \langle x,w \rangle \in \^* is some standard encoding of the pair of binary strings ''x'' and ''w'' as a single binary string. ''L'' represents a set of ordered pairs of strings, where the first string ''x'' is a member of \exists^p L, and the second string ''w'' is a "short" (, w, \leq p(, x, ) ) witness testifying that ''x'' is a member of \exists^p L. In other words, x \in \exists^p L if and only if there exists a short witness ''w'' such that \langle x,w \rangle \in L . Similarly, define : \forall^p L := \left\ Note that
De Morgan's laws In propositional logic and Boolean algebra, De Morgan's laws, also known as De Morgan's theorem, are a pair of transformation rules that are both valid rules of inference. They are named after Augustus De Morgan, a 19th-century British math ...
hold: \left( \exists^p L \right)^ = \forall^p L^ and \left( \forall^p L \right)^ = \exists^p L^ , where ''L''c is the complement of ''L''. Let be a class of languages. Extend these operators to work on whole classes of languages by the definition :\exists^\mathsf \mathcal := \left\ :\forall^\mathsf \mathcal := \left\ Again, De Morgan's laws hold: \mathsf \exists^\mathsf \mathcal = \forall^\mathsf \mathsf \mathcal and \mathsf \forall^\mathsf \mathcal = \exists^\mathsf \mathsf \mathcal , where \mathsf\mathcal = \left\. The classes NP and
co-NP In computational complexity theory, co-NP is a complexity class. A decision problem X is a member of co-NP if and only if its complement is in the complexity class NP. The class can be defined as follows: a decision problem is in co-NP precisely ...
can be defined as \mathsf = \exists^\mathsf \mathsf , and \mathsf = \forall^\mathsf \mathsf , where P is the class of all feasibly (polynomial-time) decidable languages. The polynomial hierarchy can be defined recursively as : \Sigma_0^\mathsf := \Pi_0^\mathsf := \mathsf : \Sigma_^\mathsf := \exists^\mathsf \Pi_k^\mathsf : \Pi_^\mathsf := \forall^\mathsf \Sigma_k^\mathsf Note that \mathsf = \Sigma_1^\mathsf , and \mathsf = \Pi_1^\mathsf . This definition reflects the close connection between the polynomial hierarchy and the
arithmetical hierarchy In mathematical logic, the arithmetical hierarchy, arithmetic hierarchy or Kleene–Mostowski hierarchy (after mathematicians Stephen Cole Kleene and Andrzej Mostowski) classifies certain sets based on the complexity of formulas that define th ...
, where R and RE play roles analogous to P and NP, respectively. The
analytic hierarchy In mathematical logic and descriptive set theory, the analytical hierarchy is an extension of the arithmetical hierarchy. The analytical hierarchy of formulas includes formulas in the language of second-order arithmetic, which can have quantifiers ...
is also defined in a similar way to give a hierarchy of subsets of the real numbers.


Alternating Turing machines definition

An
alternating Turing machine In computational complexity theory, an alternating Turing machine (ATM) is a non-deterministic Turing machine (NTM) with a rule for accepting computations that generalizes the rules used in the definition of the complexity classes NP and co-NP. ...
is a non-deterministic Turing machine with non-final states partitioned into existential and universal states. It is eventually accepting from its current configuration if: it is in an existential state and can transition into some eventually accepting configuration; or, it is in a universal state and every transition is into some eventually accepting configuration; or, it is in an accepting state. We define \Sigma_k^\mathsf to be the class of languages accepted by an alternating Turing machine in polynomial time such that the initial state is an existential state and every path the machine can take swaps at most ''k'' – 1 times between existential and universal states. We define \Pi_k^\mathsf similarly, except that the initial state is a universal state. If we omit the requirement of at most ''k'' – 1 swaps between the existential and universal states, so that we only require that our alternating Turing machine runs in polynomial time, then we have the definition of the class AP, which is equal to
PSPACE In computational complexity theory, PSPACE is the set of all decision problems that can be solved by a Turing machine using a polynomial amount of space. Formal definition If we denote by SPACE(''t''(''n'')), the set of all problems that can b ...
.


Relations between classes in the polynomial hierarchy

The union of all classes in the polynomial hierarchy is the complexity class PH. The definitions imply the relations: :\Sigma_i^\mathsf \subseteq \Delta_^\mathsf \subseteq \Sigma_^\mathsf :\Pi_i^\mathsf \subseteq \Delta_^\mathsf \subseteq \Pi_^\mathsf :\Sigma_i^\mathsf = \mathsf\Pi_^\mathsf Unlike the arithmetic and analytic hierarchies, whose inclusions are known to be proper, it is an open question whether any of these inclusions are proper, though it is widely believed that they all are. If any \Sigma_k^\mathsf = \Sigma_^\mathsf, or if any \Sigma_k^\mathsf = \Pi_^\mathsf, then the hierarchy ''collapses to level k'': for all i > k, \Sigma_i^\mathsf = \Sigma_k^\mathsf. In particular, we have the following implications involving unsolved problems: * P = NP if and only if P = PH. * If NP =
co-NP In computational complexity theory, co-NP is a complexity class. A decision problem X is a member of co-NP if and only if its complement is in the complexity class NP. The class can be defined as follows: a decision problem is in co-NP precisely ...
then NP = PH. (co-NP is \Pi_1^\mathsf.) The case in which NP = PH is also termed as a ''collapse'' of the PH to ''the second level''. The case P = NP corresponds to a collapse of PH to P. The question of collapse to the first level is generally thought to be extremely difficult. Most researchers do not believe in a collapse, even to the second level.


Relationships to other classes

The polynomial hierarchy is an analogue (at much lower complexity) of the
exponential hierarchy In computational complexity theory, the exponential hierarchy is a hierarchy of complexity classes, which is an exponential time analogue of the polynomial hierarchy. As elsewhere in complexity theory, “exponential” is used in two different me ...
and
arithmetical hierarchy In mathematical logic, the arithmetical hierarchy, arithmetic hierarchy or Kleene–Mostowski hierarchy (after mathematicians Stephen Cole Kleene and Andrzej Mostowski) classifies certain sets based on the complexity of formulas that define th ...
. It is known that PH is contained within
PSPACE In computational complexity theory, PSPACE is the set of all decision problems that can be solved by a Turing machine using a polynomial amount of space. Formal definition If we denote by SPACE(''t''(''n'')), the set of all problems that can b ...
, but it is not known whether the two classes are equal. One useful reformulation of this problem is that PH = PSPACE if and only if second-order logic over finite structures gains no additional power from the addition of a
transitive closure In mathematics, the transitive closure of a binary relation on a set is the smallest relation on that contains and is transitive. For finite sets, "smallest" can be taken in its usual sense, of having the fewest related pairs; for infinite ...
operator. If the polynomial hierarchy has any
complete problem In computational complexity theory, a computational problem is complete for a complexity class if it is, in a technical sense, among the "hardest" (or "most expressive") problems in the complexity class. More formally, a problem ''p'' is called h ...
s, then it has only finitely many distinct levels. Since there are
PSPACE-complete In computational complexity theory, a decision problem is PSPACE-complete if it can be solved using an amount of memory that is polynomial in the input length (polynomial space) and if every other problem that can be solved in polynomial space can b ...
problems, we know that if PSPACE = PH, then the polynomial hierarchy must collapse, since a PSPACE-complete problem would be a \Sigma_^\mathsf-complete problem for some ''k''.Arora and Barak, 2009, Claim 5.5 Each class in the polynomial hierarchy contains \leq_^\mathsf-complete problems (problems complete under polynomial-time many-one reductions). Furthermore, each class in the polynomial hierarchy is ''closed under \leq_^\mathsf-reductions'': meaning that for a class in the hierarchy and a language L \in \mathcal, if A \leq_^\mathsf L, then A \in \mathcal as well. These two facts together imply that if K_i is a complete problem for \Sigma_^\mathsf, then \Sigma_^\mathsf = \mathsf^, and \Pi_^\mathsf = \mathsf^. For instance, \Sigma_^\mathsf = \mathsf^\mathsf. In other words, if a language is defined based on some oracle in , then we can assume that it is defined based on a complete problem for . Complete problems therefore act as "representatives" of the class for which they are complete. The
Sipser–Lautemann theorem In computational complexity theory, the Sipser–Lautemann theorem or Sipser–Gács–Lautemann theorem states that bounded-error probabilistic polynomial (BPP) time is contained in the polynomial time hierarchy, and more specifically Σ2 ∩ Π2. ...
states that the class
BPP BPP may refer to: Education * BPP Holdings, a holding company based in the United Kingdom * BPP Law School, a law school based in the United Kingdom and a constituent school of BPP University * BPP University, a private university based in the ...
is contained in the second level of the polynomial hierarchy. Kannan's theorem states that for any ''k'', \Sigma_2 is not contained in SIZE(nk).
Toda's theorem Toda's theorem is a result in computational complexity theory that was proven by Seinosuke Toda in his paper "PP is as Hard as the Polynomial-Time Hierarchy" and was given the 1998 Gödel Prize. Statement The theorem states that the entire polyno ...
states that the polynomial hierarchy is contained in P#P.


Problems


See also

* EXPTIME *
Exponential hierarchy In computational complexity theory, the exponential hierarchy is a hierarchy of complexity classes, which is an exponential time analogue of the polynomial hierarchy. As elsewhere in complexity theory, “exponential” is used in two different me ...
*
Arithmetic hierarchy In mathematical logic, the arithmetical hierarchy, arithmetic hierarchy or Kleene–Mostowski hierarchy (after mathematicians Stephen Cole Kleene and Andrzej Mostowski) classifies certain sets based on the complexity of formulas that define t ...


References


General references

# # A. R. Meyer and L. J. Stockmeyer. The Equivalence Problem for Regular Expressions with Squaring Requires Exponential Space. ''In Proceedings of the 13th IEEE Symposium on Switching and Automata Theory'', pp. 125–129, 1972. The paper that introduced the polynomial hierarchy. # L. J. Stockmeyer. The polynomial-time hierarchy. ''Theoretical Computer Science'', vol.3, pp. 1–22, 1976. # C. Papadimitriou. Computational Complexity. Addison-Wesley, 1994. Chapter 17. ''Polynomial hierarchy'', pp. 409–438. # Section 7.2: The Polynomial Hierarchy, pp. 161–167.


Citations

{{ComplexityClasses Structural complexity theory Hierarchy